home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.cs.arizona.edu
/
ftp.cs.arizona.edu.tar
/
ftp.cs.arizona.edu
/
icon
/
newsgrp
/
group96a.txt
/
000133_icon-group-sender _Wed Jun 12 14:13:52 1996.msg
< prev
next >
Wrap
Internet Message Format
|
1996-09-05
|
1KB
Received: by cheltenham.cs.arizona.edu; Wed, 12 Jun 1996 09:00:18 MST
To: icon-group@cs.arizona.edu
Date: 12 Jun 1996 14:13:52 +1000
From: ok@goanna.cs.rmit.EDU.AU (Richard A. O'Keefe)
Message-Id: <4plg60$k8e@goanna.cs.rmit.EDU.AU>
Organization: Comp Sci, RMIT, Melbourne, Australia
Sender: icon-group-request@cs.arizona.edu
References: <4pga54$2qt@lectura.CS.Arizona.EDU>, <4piqll$mpm@goanna.cs.rmit.EDU.AU>, <4pjh1a$7ns@lyra.csx.cam.ac.uk>
Subject: Re: m3 should have SWAP(a,b)
Errors-To: icon-group-errors@cs.arizona.edu
Status: O
fanf2@thor.cam.ac.uk (Tony Finch) writes:
>BCPL has parallel assignment.
Alas, not true. Quoting a BCPL reference:
"The multiple assignment, for example
x, y := E1, E2
indicates that the separate assignments
x := E1; y := E2
will be performed SEQUENTIALLY (*not* simultaneously).
The order of performing the assignments is undefined."
This means that
x, y := y, x
may have either the effect of
x := y; y := x (new x = new y = old y)
or of
y := x; x := y (new x = new y = old x)
neither of which is the effect of a true parallel assignment.
This caused me enormous trouble when trying to translate a BCPL program to
Algol once, because I kept reading multiple assignments as parallel, but
they weren't.
--
Fifty years of programming language research, and we end up with C++ ???
Richard A. O'Keefe; http://www.cs.rmit.edu.au/~ok; RMIT Comp.Sci.